#include "RefinedReactor.h"

RefinedReactor::RefinedReactor(ReactorImplementation<SOCKET>* imp)
	:IReactor<SOCKET>(imp)
{
}

RefinedReactor::~RefinedReactor(void)
{
}


void RefinedReactor::register_handler(IEventHandler<SOCKET> *eh,Event_Type et)
{
	reactor_imp->register_handler(eh, et);
}

bool RefinedReactor::handle_events(timeval *timeout)
{
	return reactor_imp->handle_events(timeout);
}

void RefinedReactor::register_handler(Handler<SOCKET> h, IEventHandler<SOCKET> *eh, Event_Type et)
{
	reactor_imp->register_handler(h,eh,et);
}
	

void RefinedReactor::remove_handler(IEventHandler<SOCKET> *eh,Event_Type et)
{
	reactor_imp->remove_handler(eh,et);
}


void RefinedReactor::remove_handler(Handler<SOCKET> h, Event_Type et)
{
	reactor_imp->remove_handler(h,et);
}